/*
 * Copyright (C) 2019 ~ 2022 Uniontech Software Technology Co.,Ltd.
 *
 * Author:     yanghongwei <yanghongwei@uniontech.com>
 *
 * Maintainer: yanghongwei <yanghongwei@uniontech.com>
 */

#ifndef __UNIX_SOCKET_SERVER_H__
#define __UNIX_SOCKET_SERVER_H__

#include <memory>

class UnixSocketServerPrivate;

class UnixSocketServer
{
public:
    UnixSocketServer(const std::string &serverName = "server_socket");
    void close();
    bool isListening() const;
    bool listen(const std::string &serverName = "server_socket");

private:
    std::shared_ptr<UnixSocketServerPrivate> m_serverPrivate;
};

#endif // __UNIX_SOCKET_SERVER_H__